查看原文
其他

精通Linux系列二十:什么是sudo和su

拾叁 更AI 2023-10-21

精通Linux系列点击关注公众号,AI&编程干货及时送达   


成为超级用户

通常情况下,普通用户只能修改他们自己的文件。有一个特殊的用户,被称为超级用户或者root,他可以完全访问机器并在其上执行任何操作。你很少需要使用超级用户权限;事实上,只有在绝对必要的时候,你才应该使用它们,以避免意外地损害你的Linux系统。

你可以通过几种方式成为超级用户。一种是使用sudo命令来获得单个命令的超级用户权限。只需输入“sudo”然后跟上命令。根据你机器上的sudo配置,你可能需要输入你的密码:

 sudo rm protected_file
密码: ********         你的密码

如果你想让你的超级用户权限持续到多个命令,你可以使用sudo来运行一个shell:

 sudo bash

在通过cd浏览很多受保护的目录之前,这是方便的。当作为超级用户执行完命令后,输入^D或运行exit来结束超级用户shell并重新变为你自己。如果你忘记了你的shell是一个超级用户shell还是一个普通的shell,你可以用whoami命令来检查你的身份。如果你是超级用户,它将显示root

另一种成为超级用户的方式是使用su命令,它也可以创建一个超级用户shell,但你需要一个不同的密码,称为root密码,来使用它。如果你不知道系统上的root密码,你就不能使用su。(如果你自己安装了Linux,你在安装过程中选择了root密码):

 su -l
密码: *******         root密码
#

你的shell提示符可能会变化,经常变为#号,来表示你是超级用户。

如果你向su提供了一个用户名:

 su -l sophia
密码: *******         Sophia的密码

你可以变成那个用户(只要你知道她的密码)。

sudosu有重要的区别。su在每个Linux系统上都是标准的,但你需要一个除你自己之外的密码来运行它。sudo使用你自己的密码,但它必须被配置来这样做。对于有多个超级用户的系统来说,sudo是更优的,因为它提供了对权限的精确控制(在 /etc/sudoers 文件中)并且甚至记录了运行的命令。

推荐阅读

··································

你好,我是拾叁,7年开发老司机、互联网两年外企5年。怼得过阿三老美,也被PR comments搞崩溃过。这些年我打过工,创过业,接过私活,也混过upwork。赚过钱也亏过钱。一路过来,给我最深的感受就是不管学什么,一定要不断学习。只要你能坚持下来,就很容易实现弯道超车!所以,不要问我现在干什么是否来得及。如果你还没什么方向,可以先关注我,这里会经常分享一些前沿资讯和编程知识,帮你积累弯道超车的资本。


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存